wayland: Signal gtk-shell surface destruction to the server
authorSebastian Keller <skeller@gnome.org>
Thu, 28 Jan 2021 21:31:03 +0000 (22:31 +0100)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 7 Feb 2021 16:37:06 +0000 (11:37 -0500)
commit08b1d2b897cef5de6844103518952c58737feafc
tree15a8790bc5471d0d8c96198a7c5fa98732c36c8f
parente43376c53eeec7e05bec28e0b3ef542d79c454bd
wayland: Signal gtk-shell surface destruction to the server

This adds a "release" destructor for the gtk_surface1 interface which
signals to the server that a surface has been destroyed on the client
side, which the current "destroy" does not do.

Ideally the protocol would have specified a destroy request marked as
destructor to handle this automatically, however this is no longer
possible due to the destroy method being implicitly generated in the
absence of an explicit request in the protocol. Adding a destroy request
marked as destructor now would generate a new destroy method that
unconditionally would send the request to the server, which would break
clients running on servers not supporting that request.
gdk/wayland/gdkdisplay-wayland.c
gdk/wayland/gdksurface-wayland.c
gdk/wayland/protocol/gtk-shell.xml